import os
import json

# 指定包含JSON文件的文件夹路径
folder_path = './logs'

# 定义要匹配的关键字列表
keywords = ["电视剧","🧧欢迎","竞猜","天博","体育","日本","电影","香港","澳门","电竞","竞技","Sports","棋牌",'北京赛车',"港澳",
            'BTi体育', '多彩奇利', '永利国际', '新浪彩票', '亚博', '万博', '北京pk', '竞彩', '博彩', '购彩',
            '彩票', '网赚', '投注', '开奖', '好彩', '大乐透', '皇冠娱乐', '赛车app', '计划app', '分赛车',
            '亚洲集团', '亚洲杯', '欧洲杯', '老虎机', '水果机', '百家乐', '维加斯', '威尼斯人', '真人娱乐', '真人游戏',
            '真人现金', '真人在线', '在线开户', '现金棋牌', '亿濠扑克', '银河国际', '国际娱乐', '娱乐国际', '国际官网',
            '国际客服', '在线娱乐', '快3', '快三', '分分彩', '时时彩', '龙虎', '澳门银河', '新澳门', '夜场', '同城交友',
            '约炮', '宝盈娱乐', '皇冠足球', '皇冠篮球', '赛事预测', '足球赛事', '篮球赛事', '澳门新濠天地', '体育在线',
            '电竞竞猜', '环亚', '网赌', '赌球', '赌足球', '赌篮球', '赌博网站', '赌博网址', '赌场网站', '赌场网址', '开心飞鹰',
            '游戏官网', '新葡京', '贵宾会', '马会', '六合彩', '一肖', '乐天堂', 'bet365', '体育首页', '体育官网', '三级片',
            '岛国', '人体艺术', '黄色视频', '黄色电影', '黄色小说', '黄色片', '乱人', '乱伦', '人人看', '人人日', '人人曰',
            '一本道', '东京热', '加勒比', '91国产', '国产自拍', '狠狠', '性爱', '撸', '夜上海', '老湿机', '老司机', '桑拿', '快播', '找小姐']

# 遍历文件夹中的每个文件
anlian_urls=[]
for filename in os.listdir(folder_path):
    if filename.endswith('.json'):
        file_path = os.path.join(folder_path, filename)

        # 打开并读取JSON文件
        with open(file_path, 'r', encoding='utf-8') as file:
            try:
                data = json.load(file)

                # 检查是否存在html
                if 'html' in data:
                    html = data['html']

                    # 查找是否存在匹配的关键字
                    found = False
                    matched_keyword = None
                    for event in html:
                        value = event.get('value', '')

                        # 确保value是字符串类型，并检查是否包含关键字
                        if isinstance(value, str):
                            for keyword in keywords:
                                if keyword in value:
                                    found = True
                                    matched_keyword = keyword  # 保存匹配的关键字
                                    break
                        if found:
                            break

                    # 如果找到了匹配的关键字，输出第一个navigate_url和匹配的关键字
                    if found and 'navigate_urls' in data and len(data['navigate_urls']) > 0:
                        anlian_urls.append(data['html'][0].get('url'))
                        print(
                            f"文件: {filename} 中匹配的关键字: '{matched_keyword}'，url: {data['html'][0].get('url')}")
            except json.JSONDecodeError:
                #print(f"文件: {filename} 不是有效的JSON文件，跳过。")
                continue
with open('anlian_urls.txt','w') as file:
    for anlian_url in anlian_urls:
        file.write(anlian_url+'\n')
# 创建或清空输出文件
with open('anlian_urls_v2.txt', 'w', encoding='utf-8') as output_file:
    # 遍历文件夹中的每个文件
    for filename in os.listdir(folder_path):
        if filename.endswith('.json'):
            file_path = os.path.join(folder_path, filename)

            # 打开并读取 JSON 文件
            with open(file_path, 'r', encoding='utf-8') as file:
                try:
                    data = json.load(file)

                    # 检查是否存在 html 字段
                    if 'html' in data:
                        for entry in data['html']:
                            url = entry.get('url')
                            code = entry.get('code')
                            html_content = entry.get('html')

                            # 查找是否存在匹配的关键字
                            found = False
                            matched_keyword = None
                            for keyword in keywords:
                                if keyword in html_content:
                                    found = True
                                    matched_keyword = keyword
                                    break

                            # 如果找到了匹配的关键字，输出第一个 URL 和匹配的关键字
                            if found:
                                output_file.write(
                                    f"文件: {filename} 中匹配的关键字: '{matched_keyword}'，第一个 URL: {url}\n")
                                break  # 找到一个匹配后就跳出循环，输出第一个 URL
                except json.JSONDecodeError:
                    print(f"文件: {filename} 不是有效的 JSON 文件，跳过。")



# 创建或清空输出文件
with open('anlian_urls_v3.txt', 'w', encoding='utf-8') as output_file:
    # 遍历文件夹中的每个文件
    for filename in os.listdir(folder_path):
        if filename.endswith('.json'):
            file_path = os.path.join(folder_path, filename)

            # 打开并读取JSON文件
            with open(file_path, 'r', encoding='utf-8') as file:
                try:
                    data = json.load(file)

                    # 检查是否存在jsevents
                    if 'jsevents' in data:
                        jsevents = data['jsevents']

                        # 查找是否存在匹配的关键字
                        found = False
                        matched_keyword = None
                        for event in jsevents:
                            value = event.get('value', '')

                            # 确保value是字符串类型，并检查是否包含关键字
                            if isinstance(value, str):
                                for keyword in keywords:
                                    if keyword in value:
                                        found = True
                                        matched_keyword = keyword  # 保存匹配的关键字
                                        break
                            if found:
                                break

                        # 如果找到了匹配的关键字，输出第一个navigate_url和匹配的关键字
                        if found and 'navigate_urls' in data and len(data['navigate_urls']) > 0:
                            navigate_url = data['navigate_urls'][0].get('navigate_url')
                            output_file.write(
                                f"文件: {filename} 中匹配的关键字: '{matched_keyword}'，navigate_urls 的第一个 navigate_url: {navigate_url}\n")
                except json.JSONDecodeError:
                    print(f"文件: {filename} 不是有效的JSON文件，跳过。")
